function [Fre, Reflectance] = FC_Experiment_Show(FileRef, FileSample, Option, FreqRang)
    %FC_EXPERIMENT_SHOW 功能描述
    %@since: 2022-05-22 10:37:47
    %@update: 新建
    % 2022-05-24 20:12:09 根据频率范围 截断数据
    % 2022-05-31 10:10:15 增加不绘制图形的选项
    % 2022-06-06 22:49:34 添加自定义FFT功能，可直接输入时域信号
    % 2022-06-07 10:32:40 自动判断是否需要主动fft变换，fft长度补成原来的4倍
    %@type:function
    %    *参数说明*
    %       @param [FileRef] 参考信号文件
    %       @param [FileSample] 样品信号文件
    %       @return [Reflectance] 返回复吸收系数
    %       @param [Option] 绘图模式 吸收率，反射率，反射系数，反射系数分贝
    %       @param [FreqRang] 指定频率范围
    %       @return [Fre] 频率
    %    *使用说明*
    %       [Fre,Reflectance] = FC_EXPERIMENT_SHOW(FileRef, FileSample) 将测量的信号与参考信号相比，得到复反射系数
    %
    % ———————————————— POWERED BY YINWEI ————————————————
    if ~exist('Option', 'var')
        Option = 1;
    end

    if ~exist('FreqRang', 'var')
        FreRange = [0.7 1.1];
    else
        FreRange = FreqRang;
        clear FreqRang
    end

    Ref = importdata(FileRef);
    Samp = importdata(FileSample);

    if Option == 5 % 是否自己做fft，仅适用于读取时域数据的情况
        Ref = FFT_anaysis(Ref);
        Samp = FFT_anaysis(Samp);
    end

    LR = size(Ref.data, 1); LS = size(Samp.data, 1);
    % 使两个信号点数相等
    if LR > LS
        Ref.data = Ref.data(1:LS, :);
    elseif LR < LS
        Samp.data = Samp.data(1:LR, :);
    end

    Fre = Samp.data(:, 1);
    sampReflectance = Samp.data(:, 2);
    refReflectance = Ref.data(:, 2);
    Reflectance = (sampReflectance ./ refReflectance);

    IndicsRange = find(FreRange(1) <= Fre & FreRange(2) >= Fre);
    Reflectance = Reflectance(IndicsRange);
    Fre = Fre(IndicsRange);

    if Option == 1
        Values = 1 - abs(Reflectance).^2;
        YW_Plot_Fast({Fre, Values}, {"*-"}, ["Absorption"]);
    elseif Option == 2
        Values = abs(Reflectance).^2;
        YW_Plot_Fast({Fre, Values}, {"*-"}, ["Reflection"]);
    elseif Option == 3
        Values = abs(Reflectance);
        YW_Plot_Fast({Fre, Values}, {"*-"}, ["Reflectance"]);
    elseif Option == 4
        Values = abs(Reflectance);
        YW_Plot_Fast({Fre, 20 * log10(Values)}, {"*-"}, ["Reflection-dB"]);
    elseif Option == 5
        Values = Reflectance;
%         YW_Plot_Fast({Fre, abs(Reflectance)}, {"*-"}, ["Reflectance-FTT"]);
    else
        disp(['不绘图']);
    end

    %     xlim([0.4 1.6]);
    %     ylim([0 1]);

end

function [Output] = FFT_anaysis(ImportedDATA)
    % 初始化数组，设置傅里叶变换参数
    fs = 1/0.020367; % 采样频率
%     fs = 1/0.006098;
    disp(['当前的采样频率为，',num2str(fs)]);
    n = 2048 * 4;
    fshift = (-n / 2:n / 2 - 1) * (fs / n);
    f_start = find(fshift == 0);
    f_end = n;

    Output = ImportedDATA;
    DATA = Output.data(:, 2);

    % 做傅里叶变换
    Result = fft(DATA, n);
    Result = fftshift(Result);
    Result_Single = Result(f_start:f_end);
    Fre_Single = fshift(f_start:f_end)';
    Output.data = [Fre_Single, Result_Single];

end
